package com.example.smart.order.entity;

import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * 订单信息类，用于表示餐厅订单的详细信息。
 * 该类实现了 Serializable 接口，以支持对象的序列化和反序列化。
 */
@Data
public class OrderInfo implements Serializable {

    /**
     * 订单ID，唯一标识一个订单。
     */
    private Long id;

    /**
     * 餐桌ID，表示订单对应的餐桌。
     */
    private Long diningTableId;

    /**
     * 菜品ID，表示订单中的菜品。
     */
    private Long dishId;

    /**
     * 菜品名称，用于显示菜品的名称。
     */
    private String dishName;

    /**
     * 菜品价格，表示菜品的单价。
     */
    private BigDecimal dishPrice;

    /**
     * 菜品数量，表示订单中该菜品的数量。
     */
    private Integer dishQuantity;

    /**
     * 订单创建时间，记录订单创建的时刻。
     */
    private LocalDateTime createdAt;

    /**
     * 订单支付状态，表示订单是否已支付。
     * 0 表示未支付，1 表示已支付。
     */
    private Integer isPaid;
}
